﻿using CodeSaude.Domain.Entities;
using CodeSaude.Domain.Enums;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Web.Mvc;

namespace CodeSaude.Application.ViewModels
{
    public class ExameViewModel
    {
        public int ExameId { get; set; }

        [Display(Name = @"Nome")]
        [Required(ErrorMessage = @"O campo Nome é obrigatório.")]
        public string NomeExame { get; set; }

        [Display(Name = @"Categoria")]
        [Required(ErrorMessage = @"O campo Categoria é obrigatório.")]
        public int IdCategoria { get; set; }

        [Display(Name = @"Situação")]
        [Required(ErrorMessage = @"O campo Situação é obrigatório.")]
        public int IdSituacao { get; set; }

        [Display(Name = @"Código SUS")]
        [Required(ErrorMessage = @"O campo Código SUS é obrigatório.")]
        public string CodigoSus { get; set; }

        public virtual ICollection<RequisicaoExame> ListaRequisicoesExame { get; set; }
        
        public string Situacao { get; set; }

        public IEnumerable<SelectListItem> ListaSituacoes { get; set; }

        public string ClasseCssLabelSituacao
        {
            get
            {
                var cssClassLabel = string.Empty;
                switch (IdSituacao)
                {
                    case (int)SituacaoEnum.Ativo:
                        cssClassLabel = "label sitAtivo";
                        break;
                    case (int)SituacaoEnum.Inativo:
                        cssClassLabel = "label sitInativo";
                        break;
                }

                return cssClassLabel;
            }
        }
    }
}
